.\" $OpenBSD: wpi.4,v 1.38 2014/02/15 20:28:19 tedu Exp $
.\"
.\" Copyright (c) 2006, 2007
.\"	Damien Bergamini <damien.bergamini@free.fr>. All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\"    notice unmodified, this list of conditions, and the following
.\"    disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\"    notice, this list of conditions and the following disclaimer in the
.\"    documentation and/or other materials provided with the distribution.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.Dd $Mdocdate: February 15 2014 $
.Dt WPI 4
.Os
.Sh NAME
.Nm wpi
.Nd Intel PRO/Wireless 3945ABG IEEE 802.11a/b/g wireless network device
.Sh SYNOPSIS
.Cd "wpi* at pci?"
.Sh DESCRIPTION
The
.Nm
driver provides support for
.Tn Intel
PRO/Wireless 3945ABG Mini PCI Express network adapters.
.Pp
These are the modes the
.Nm
driver can operate in:
.Bl -tag -width "IBSS-masterXX"
.It BSS mode
Also known as
.Em infrastructure
mode, this is used when associating with an access point, through
which all traffic passes.
This mode is the default.
.It monitor mode
In this mode the driver is able to receive packets without
associating with an access point.
This disables the internal receive filter and enables the card to
capture packets from networks which it wouldn't normally have access to,
or to scan for access points.
.El
.Pp
The
.Nm
driver can be configured to use
Wired Equivalent Privacy (WEP) or
Wi-Fi Protected Access (WPA-PSK and WPA2-PSK).
WPA is the current encryption standard for wireless networks.
It is strongly recommended that WEP
not be used as the sole mechanism
to secure wireless communication,
due to serious weaknesses in it.
The
.Nm
driver offloads both encryption and decryption of unicast data frames to the
hardware for the CCMP cipher.
.Pp
The
.Nm
driver can be configured at runtime with
.Xr ifconfig 8
or on boot with
.Xr hostname.if 5 .
.Sh FILES
The driver needs at least version 3.1 of the following firmware file,
which is loaded when an interface is brought up:
.Pp
.Bl -tag -width Ds -offset indent -compact
.It Pa /etc/firmware/wpi-3945abg
.El
.Pp
This firmware file is not free because Intel refuses to grant
distribution rights without contractual obligations.
As a result, even though
.Ox
includes the driver, the firmware file cannot be included and
users have to download this file on their own.
.Pp
A prepackaged version of the firmware can be installed using
.Xr fw_update 1 .
.Sh EXAMPLES
The following example scans for available networks:
.Pp
.Dl # ifconfig wpi0 scan
.Pp
The following
.Xr hostname.if 5
example configures wpi0 to join network
.Dq mynwid ,
using WPA key
.Dq mywpakey ,
obtaining an IP address using DHCP:
.Bd -literal -offset indent
nwid mynwid
wpakey mywpakey
dhcp
.Ed
.Sh DIAGNOSTICS
.Bl -diag
.It "wpi0: device timeout"
A frame dispatched to the hardware for transmission did not complete in time.
The driver will reset the hardware.
This should not happen.
.It "wpi0: fatal firmware error"
For some reason, the firmware crashed.
The driver will reset the hardware.
This should not happen.
.It "wpi0: Radio transmitter is off"
The radio transmitter is off and thus no packet can go out.
The driver will reset the hardware.
Make sure the laptop radio switch is on.
.It "wpi0: error N, could not read firmware ..."
For some reason, the driver was unable to read the firmware image from the
filesystem.
The file might be missing or corrupted.
.It "wpi0: firmware file too short: N bytes"
The firmware image is corrupted and can't be loaded into the adapter.
.It "wpi0: could not load firmware"
An attempt to load the firmware into the adapter failed.
The driver will reset the hardware.
.El
.Sh SEE ALSO
.Xr arp 4 ,
.Xr ifmedia 4 ,
.Xr intro 4 ,
.Xr netintro 4 ,
.Xr pci 4 ,
.Xr hostname.if 5 ,
.Xr ifconfig 8
.Sh AUTHORS
The
.Nm
driver was written by
.An Damien Bergamini Aq Mt damien.bergamini@free.fr .
